diff -Nur orig//src/wl/sys/wl_linux.c fixed/src/wl/sys/wl_linux.c
--- orig//src/wl/sys/wl_linux.c	2010-12-14 19:58:07.000000000 -0600
+++ fixed/src/wl/sys/wl_linux.c	2011-03-09 12:32:47.236260917 -0600
@@ -482,7 +482,7 @@
 #ifdef WL_ALL_PASSIVE
 		spin_lock_init(&wl->txq_lock);
 #endif 
-		init_MUTEX(&wl->sem);
+		sema_init(&wl->sem,1);
 	}
 
 	if (!(wl->wlc = wlc_attach((void *) wl, vendor, device, unit, wl->piomode,
